1. Learn ASS and Lua
  2. Learn NyuFX functions and ASS values
  3. Create your first project
  4. Play with examples

1. Learn ASS and Lua

First of all, you need to know how you're creating what, or in other words:

Without any idea about the language for effect description or the format of result, you can't do anything!

The language to describe effects is scripting language Lua. It's an interpreted language, so you're executing text files instead of an executable.

The language offers you to define what you want in which case, how often, attended to this or that...

You're more free. You're not limited to buttons, sliders or text fields with just a few commands in a completely graphical interface.

Regrettably there aren't many tutorials about Lua out there because it's mostly used by already experienced programmers to extend programs like games.

Recommended tutorials:


The resulting file will be in subtitle format ASS (Advanced Substation Alpha). This format allows time-specific styled text and drawings as video overlay.

Many combinations of style tags with well calculated parameters allow great effects.

Because NyuFX should be used by already experienced ASS typesetters, an explanation isn't needed.

2. Learn NyuFX functions and ASS values

After Lua and ASS isn't a problem anymore, the connection to NyuFX follows.

Read the documentation about NyuFX functions and parsed ASS values. It's the extension of the Lua environment that finally makes NyuFX to a karaoke effect generator.

3. Create your first project

  1. Open NyuFX.
  2. Press F3 to open the NyuFX templates folder.
  3. Drag file "start.lua" onto Lua editor field and drop it. Templates folder can be closed now.
  4. Drag any .ass file with karaoke time data onto ASS editor field and drop it.
  5. Click on "Choose" button to choose the target for the output file (same folder like karaoke time file is a good target).
  6. Click on "Generate" button to generate the output file. Wait for finish.
  7. Click on "Open" button to open the output file by associated program.
  8. You see what "start.lua" does: just a copy of lines without karaoke tags.
  9. Your turn: Replace TODO with your code for effects and save it as new file (same folder like karaoke time file is a good target).
  10. Workflow begins: Change code, click "Generate", wait, click "Open", view and decide, change code, ... until all fits.

4. Play with examples

In the NyuFX templates folder are some examples. For absolute beginners until advanced users.

Load and execute some of them, look into the code, reuse parts of them, learn by doing.